<?php

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
require_once 'Usuario.php';
include_once "../model/dao/DBTipoPermissao.php";
include_once "../model/dao/DBMembroExterno.php";
include_once "TipoProfessor.php";

/**
 * Description of MembroExterno
 *
 * @author gabrielbmoro
 */
class MembroExterno extends Usuario {

    private $cpf;
    private $instituicao;
    private $dbPermissao;
    private $tipoPermissao;
    private $tipoProfissional;
    private $dbMembroExterno;

    public function __construct($cpf, $senha, $email, $nome, $instituicao) {
        parent::__construct($senha, $email, $nome);
        $this->cpf = $cpf;
        $this->instituicao = $instituicao;
        $this->dbPermissao = new DBTipoPermissao();
        $this->tipoPermissao = new TipoPermissao(2);

        $temp = new TipoProfessor();
        $this->tipoProfissional = $temp->getEXTERNO();
        $this->dbMembroExterno = new DBMembroExterno();
    }

    public function cadastrarDadosPessoais() {
        $resultado = $this->dbPermissao->recuperar($this->tipoPermissao->getTipoDefinido());

        $dado = "\"" . parent::getNome() . "\",\"" . $this->cpf . "\",\"" .
                parent::getEmail() . "\",\"" . $this->instituicao .
                "\"," . $resultado . "," . $this->tipoProfissional . ",\"" . parent::getSenha() . "\"";
        echo "$dado";

        $temp = $this->dbMembroExterno->verificarSeMembroExternoExiste($this->cpf);
        if ($temp == false) {
            $result = $this->dbMembroExterno->inserir($dado);
            if ($result == true) {
                return true;
            } else {
                return false;
            }
        } else {
            echo "Membro externo existe!";
            return false;
        }
    }
    
    public function editarDadosPessoais($idMembro, $nome,$institucao, $email, $senha){
        $dado= array(0=>"\"".$nome."\"", 1=>"\"".$email."\"",2=> "\"".$institucao."\"",3 => "\"".$senha."\"");
                
        return $this->dbMembroExterno->editar($idMembro, $dado);
    }

    public function recuperarDadosDeCadastro($idMembro) {
        return $this->dbMembroExterno->recuperar($idMembro);
    }

    public function getCpf() {
        return $this->cpf;
    }

    public function setCpf($cpf) {
        $this->cpf = $cpf;
    }

    public function getInstituicao() {
        return $this->instituicao;
    }

    public function setInstituicao($instituicao) {
        $this->instituicao = $instituicao;
    }

    public function getDadosDePerfil($idAluno) {
        $arrayList = $this->dbMembroExterno->recuperar($idAluno);
        return $arrayList;
    }

}
